package tr.edu.metu.is550.isell.domain;

public abstract class ApplicationException extends RuntimeException {
    protected String errorCode;
    protected String errorMessage;
    protected String[] args;

    public ApplicationException() {
    }

    public ApplicationException(String errorCode, String errorMessage, String... args) {
        this.errorCode = errorCode;
        this.errorMessage = errorMessage;
        this.args = args;
    }

    public ApplicationException(String errorCode, String errorMessage) {
        this(errorCode, errorMessage, (String[]) null);
    }

    public String getErrorCode() {
        return errorCode;
    }

    public String getErrorMessage() {
        return errorMessage;
    }

    public String[] getArgs() {
        return args;
    }
}
